package org.zjx.route;


import org.zjx.common.entity.Address;
import org.zjx.common.route.IRoute;

import java.util.List;

/**
 * 路径查找接口（面向接口编程，便于扩展不同算法）
 */
public interface PathFinder {
    /**
     * 查找最短路径
     * @param graph 完整图数据（所有路线集合）
     * @param start 起点标识
     * @param end 终点标识
     * @return 路径Route集合（按顺序排列），不可达时返回null
     */
    List<IRoute> findPath(List<IRoute> graph, Address start, Address end);
}
